﻿using Microsoft.Extensions.DependencyInjection;
using System;
using System.Collections.Generic;
using System.Text;
using TianShu.Auditing;
using TianShu.Data;
using TianShu.Domain.Shared;
using TianShu.EventBus;
using TianShu.Guids;
using TianShu.Modularity;
using TianShu.MultiTenancy;
using TianShu.Threading;
using TianShu.Timing;

namespace TianShu.Domain
{
    [DependsOn(
        typeof(AbpAuditingModule),
        typeof(AbpDataModule),
        typeof(AbpEventBusModule),
        typeof(AbpGuidsModule),
        typeof(AbpMultiTenancyModule),
        typeof(AbpThreadingModule),
        typeof(AbpTimingModule),
        //typeof(AbpUnitOfWorkModule),
        //typeof(AbpObjectMappingModule),
        //typeof(AbpExceptionHandlingModule),
        //typeof(AbpSpecificationsModule)
        typeof(AbpMultiTenancyModule),
        typeof(AbpGuidsModule),
        typeof(TianShuDomainSharedModule)
        )]
    public class TianShuDomainModule : AbpModule
    {
        public override void PreConfigureServices(ServiceConfigurationContext context)
        {
            context.Services.AddConventionalRegistrar(new AbpRepositoryConventionalRegistrar());
        }
    }
}
